package com.sdy.dcsb.biz.mapper;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.sdy.dcsb.biz.model.EsbScript;
import com.sdy.dcsb.biz.model.dto.EsbScriptDto;
import com.sdy.dcsb.biz.model.vo.EsbScriptVo;
import com.sdy.mvc.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author Snaky
 * @date 2020/4/21 17:05
 */
public interface EsbScriptMapper extends BaseMapper<EsbScript> {

    /**
     * 通过封装接口id查询关联所有接口脚本信息
     * @param id 封装接口id
     * @return 脚本集合
     */
    List<EsbScriptDto> getAllScriptByEncapsulationId(Integer id);

    /**
     * 查询已存在脚本分页数据
     * @param page 分页信息
     * @param name 脚本名称
     * @return 分页数据
     */
    IPage<EsbScriptVo> getPageData(Page<?> page, @Param("name") String name);

    /**
     * 查询脚本详情，包含已关联接口信息
     * @param id 脚本id
     * @return 脚本详情
     */
    EsbScriptVo getDetail(Integer id);

}
